package dfbz.线程的操作;

public class demo02 {
    public static void main(String[] args) {
        //多条线程时，当指定线程调用join方法时，线程执行权交给该线程，并且当前线程必须等该线程执行完 毕之后才会执行但有可能被其他线程抢去CPU执行权. public final void join() ：让线程在当前线程优先执行,直至t线程执行完毕时,再执行当前线程.
        //public final void join(long millis) ：让线程执行millis毫秒,再执行其他线程
        demo();//线程的加入
    }

    private static void demo() {
        //创建线程1
        Thread t1=new Thread(new Runnable(){
            @Override
            public void run() {
                for (int i = 0; i < 1000; i++) {
                    System.out.println("线程1:"+i);
                }
            }
        });
        //创建线程1
        Thread t2=new Thread(new Runnable(){
            @Override
            public void run() {
                for (int i = 0; i < 1000; i++) {
                    System.out.println("线程2:"+i);
                    if(i==500){
                        try {
                            t1.join(10);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }
        });
        t1.start();
        t2.start();
    }
}
